The present invention relates to feedback cancellation methods and apparatus.
A problem that can occur with hearing instruments such as hearing aids is that the output of a speaker can feed back into the input microphone and in some circumstances can result in an out-of-control positive-feedback oscillation. This can occur in systems such as hearing aids which amplify the received input signals to produce an amplified output signal to a speaker. If the amplified output signal is not sufficiently attenuated at the input microphone, input noises will continue to loop through the feedback path until the annoying ring of positive feedback occurs.
A number of methods and techniques have been designed to overcome this feedback problem. These methods typically use digital signal processing (DSP). Most DSP-based feedback-cancellation techniques typically estimate the feedback signal and then subtract this estimated feedback signal from the microphone signal. Because the feedback paths are varying, adaptive feedback cancellation is necessary.
One way to do adaptive feedback cancellation is to use a noise sequence continuously injected at a low level while the hearing instrument is in normal operation. This approach has the disadvantage of reducing the signal-to-noise ratio.
Another adaptive feedback cancellation approach is to use an adaptive filter connected to the output of the hearing aid processing unit and subtract the output of the adaptive filter from the microphone signal. FIG. 1 illustrates an example of this prior-art embodiment.
The system includes a microphone 22 which sends a signal to the subtracting unit 24. Subtracting unit 24 subtracts the microphone signal from the output of the adaptive filter 26. This combined signal is sent to the hearing aid processing unit 28 which produces an output which is then sent to the speaker 30 to produce the output.
The system of FIG. 1 operates relatively well when a broadband input signal is sent to the microphone. If the input is a narrowband signal, however, artifacts are produced and a degraded performance results.
A system that avoids some of these problems is described in the article xe2x80x9cConstrained Adaptation for Feedback Cancellation in Hearing Aids,xe2x80x9d by James M. Kates, Journal of the Acoustical Society of America, 106 (2), August 1999, pp. 1010-1019. This article describes a constrained adaptive feedback cancellation scheme.
Let x(n), f(n) and v(n) denote the input of the system, the output of the feedback path and the output of the adaptive FIR filter, respectively, then we have the microphone output s(n)=x(n)+f(n) and the difference signal e(n)=s(n)xe2x88x92v(n). In the standard approach, the weights W(n) of the adaptive FIR filter are updated by minimizing the power of e(n) so that the output of the adaptive filter could track the signal f(n) provided by the real feedback path and the effect incurred by feedback could be minimized. In the ideal case, v(n) approximates f(n) so that e(n) could approximate the real input signal x(n) without any feedback signal. In the constrained adaptation scheme, the cost function for updating weights in the block-by-block processing mode is                               ε          ⁡                      (            m            )                          =                                                            ∑                                  N                  -                  1                                                            n                =                0                                      ⁢                                          e                n                2                            ⁡                              (                m                )                                              =                                                                      ∑                                      N                    -                    1                                                                    n                  =                  0                                            ⁢                                                [                                                                                    s                        n                                            ⁡                                              (                        m                        )                                                              -                                                                  v                        n                                            ⁡                                              (                        m                        )                                                                              ]                                2                                      +                          β              ⁢                                                                    ∑                                          K                      -                      1                                                                            k                    =                    0                                                  ⁢                                                      [                                                                                            w                          k                                                ⁡                                                  (                          m                          )                                                                    -                                                                        w                          k                                                ⁡                                                  (                          0                          )                                                                                      ]                                    2                                                                                        Equation        ⁢                  xe2x80x83                ⁢        1            
and one algorithm to update the weights is                                           w            k                    ⁡                      (            m            )                          =                                            w              k                        ⁡                          (                              m                -                1                            )                                -                      2            ⁢                          xe2x80x83                        ⁢                          μβ              ⁡                              [                                                                            w                      k                                        ⁡                                          (                                              m                        -                        1                                            )                                                        -                                                            w                      k                                        ⁡                                          (                      0                      )                                                                      ]                                              +                      2            ⁢                          xe2x80x83                        ⁢            μ            ⁢                                                            ∑                                      N                    -                    1                                                                    n                  =                  0                                            ⁢                                                                    e                    n                                    ⁡                                      (                                          m                      -                      1                                        )                                                  ⁢                                                      d                                          n                      -                      k                                                        ⁡                                      (                                          m                      -                      1                                        )                                                                                                          Equation        ⁢                  xe2x80x83                ⁢        2            
where sn(m), vn(m) are the microphone output signal (corresponds to s(n)) and the output of the adaptive filter (corresponds to v(n)) at block m, respectively; N and K are the sample number in one block and the length of the adaptive filter, respectively; dnxe2x88x92k(mxe2x88x921) is the input of the FIR filter at time instant (nxe2x88x92k) of the (mxe2x88x921)""th block. The major difference between this constrained adaptive feedback cancellation scheme and the standard adaptive scheme is the inclusion of the constrained term   β  ⁢                    ∑                  K          -          1                            k        =        0              ⁢                  [                                            w              k                        ⁡                          (              m              )                                -                                    w              k                        ⁡                          (              0              )                                      ]            2      
in the above cost function where xcex2 is a weighting factor, wk(m) is the k""th weight at m""th block, and wk(0) is the k""th initial weight. These initial weights provide a reference set of adaptive filter weights and can be obtained during the hearing-aids fitting stage by letting the system adapt in the presence of a white-noise source until the adaptive filter reaches steady state. With this constraint, the feedback cancellation filter can freely adapt near the initial coefficients but penalize coefficients that deviate too far from the initial values. Testing has shown that this constraint-based algorithm is effective in overcoming artifacts and signal cancellation problems but does not effectively model large deviations from the initial feedback path such as that caused by the placement and removal of a telephone handset. For example, if the amplitude transform function of the real feedback path is shifted above 10 dB (as happens when a telephone handset is placed to the aided ear) from the initial feedback path (corresponds to wk(0)), the real optimizing weights of the adaptive filter should be wk(M)=3.16wk(0). Obviously, this solution cannot be obtained by minimizing the Equation 1 mainly because of the constraint term (the second term of the right hand of Equation 1).
Based on these problems, it is highly desirable to develop a new scheme which can not only overcome the artifacts and signal cancellation problem but also have the ability to model large variations of the feedback path.
One embodiment of the present invention is a system that includes a sound processing unit producing an output. A multi-stage feedback canceling unit receives the output of the sound processing unit. The multi-stage feedback canceling unit produces a feedback canceling signal. The multi-stage feedback canceling unit includes a constrained adaptive filter and an adaptive gain-modifying unit. The system also includes a combining unit, combining the feedback canceling signal with an input signal, and providing the combined signal as the input to the sound processing unit.
In one embodiment the sound processing unit is a hearing aid. The sound processing unit and multi-stage feedback-canceling unit can be implemented as a software program on a processor such as a DSP.
The advantage of doing an adaptive gain modification in addition to the constrained adaptive filtering is that the adaptive gain modification can make up for some of the reduced output of the constrained adaptive filtering which is the result of the constraints. It has been found that the use of the constrained filtering has the disadvantage that when the environment of the hearing instrument is drastically different from the normal environment for which the constraining coefficients are developed, the output of the adaptive filter can be quite different than the feedback sound signal. For example, when a telephone handset is placed next to a hearing aid device using the constrained adaptive filter in the feedback canceling path, the real feedback path can be much greater than the output of the adaptive filter. The constraint terms prevent the correct operation of the feedback path.
In the present invention, by adding an adaptive gain element, the output of the two-stage feedback-canceling unit can be made relatively close to the signal of the feedback path. The constrained adaptive filtering prevents the feedback path from adjusting its filter shape so as to cause the undesired behavior for narrowband input signals. The adaptive gain modifying block changes the overall gain of the feedback-canceling path without inducing the poor behavior for the narrowband input.